#include "exif_writer.h"
#include <stdio.h>

int main() {
    // 示例1：使用简单的add_exif_data函数
    printf("示例1：使用add_exif_data函数\n");
    add_exif_data("20250724_153209_731.jpg");
    printf("已生成: 20250724_153209_731.jpg_with_exif.jpg\n\n");
    
    // 示例2：使用灵活的API
    printf("示例2：使用灵活的API\n");
    exif_context_t* ctx = exif_create_context();
    if (!ctx) {
        printf("创建EXIF上下文失败\n");
        return 1;
    }
    
    // 添加相机信息
    exif_add_string(ctx, EXIF_IFD0, EXIF_TAG_MAKE, "Nikon");
    exif_add_string(ctx, EXIF_IFD0, EXIF_TAG_MODEL, "D850");
    
    // 添加ISO信息
    exif_add_short(ctx, EXIF_EXIF_IFD, EXIF_TAG_ISO_SPEED_RATINGS, 200);
    
    // 添加GPS坐标（纽约）
    exif_add_gps_coordinates(ctx, 40.7128, -74.0060);
    
    // 写入文件
    exif_write_to_file(ctx, "20250724_153209_731.jpg", "output_nikon.jpg");
    printf("已生成: output_nikon.jpg\n");
    
    exif_destroy_context(ctx);
    
    // 示例3：只添加相机信息，不添加GPS
    printf("\n示例3：只添加相机信息\n");
    ctx = exif_create_context();
    if (ctx) {
        exif_add_string(ctx, EXIF_IFD0, EXIF_TAG_MAKE, "Sony");
        exif_add_string(ctx, EXIF_IFD0, EXIF_TAG_MODEL, "A7R IV");
        exif_add_short(ctx, EXIF_EXIF_IFD, EXIF_TAG_ISO_SPEED_RATINGS, 400);
        
        exif_write_to_file(ctx, "20250724_153209_731.jpg", "output_sony.jpg");
        printf("已生成: output_sony.jpg\n");
        
        exif_destroy_context(ctx);
    }
    
    printf("\n所有示例完成！\n");
    return 0;
} 